
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>

//struct	Node
//{
//	int data;
//	struct Node* next;
//};
//
//
//struct Node* InitList()
//{
//	struct Node* node1 = (struct Node*)malloc(sizeof(struct Node));
//	node1->data = 1;
//	node1->next = NULL;
//	struct Node* node2 = (struct Node*)malloc(sizeof(struct Node));
//	node2->data = 2;
//	node2->next = NULL;
//	struct Node* node3 = (struct Node*)malloc(sizeof(struct Node));
//	node3->data = 3;
//	node3->next = NULL;
//
//	node1->next = node2;
//	node2->next = node3;
//    
//	return node1;
//}
//
//
//int main()
//{
//	struct Node* head = InitList();
//	while (head)
//	{
//		printf("%d -> ", head->data);
//		head = head->next;
//	}
//	printf("NULL\n");
//
//
//	system("pause");
//	return 0;
//}






//#include<stdio.h>
//int main()
//{
////    int a = 0, b = 0;
////    scanf("%d %d", &a, &b);
////    int item = b - a;
////    int sum = 0;
////    int i = 0;
////    int j = 0;
////    int a[10001] = { 0 };
////    while (a <= b)
////    {
////        for (i = 0; i <= item; i++)
////        {
////            a[i] = a;
////            a++;
////        }
////    }
////    printf("Sum = %d", sum);
//
//
//    {
//        int a = 0;
//    }
//
//    printf("%d", a);  //error
//
//
//    return 0;
//}


//#include <string.h>
//
//struct std
//{
//    char name[20];
//    int age;
//};
//
//int cmp_name(const void* p1, const void* p2)
//{
//    return strcmp(((struct std*)p1)->name, ((struct std*)p2)->name);
//}
//
//int main()
//{
//    struct std s[] = { {"zhangsan",30} ,{"lisi",18}, {"wangwu",25},{"zhaoliu",20} };
//    int sz = sizeof(s) / sizeof(s[0]);
//    qsort(s, sz, sizeof(s[0]), cmp_name);
//
//    for (int i = 0; i < sz; i++)
//    {
//        printf("%s %d\n", s[i].name, s[i].age);
//    }
//    return 0;
//}
//





//
//int main()
//{
//	int a = 3, b = 5;
//
//	a = a * b;
//	b = a / b;
//	a = a / b;
//
//	return 0;
//}








//#include <stdio.h>

//int main()
//{
//    int arr[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
//    int year, month;
//    while (scanf("%d %d", &year, &month) != EOF)
//    {
//        if (month == 2 && ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0))
//        {
//            printf("%d\n", arr[month] + 1);
//        }
//        else
//            printf("%d\n", arr[month]);
//    }
//    return 0;
//}


//#define _CRT_SECURE_NO_WARNINGS 1
//#include <stdio.h>
//int leapyear(int y)
//{
//    if (y % 400 == 0 || (y % 4 == 0 && y % 100 != 0));
//    {
//        return 1;
//    }
//    return 0;
//}
//
//int main()
//{
//    int y = 2002, m = 2, days = 0;
//    //scanf("%d %d", &y, &m);
//    int ret = leapyear(y);
//    int arr[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
//    if (ret)
//    {
//        arr[2] += 1;
//    }
//    days = arr[m];
//    printf("%d", days);
//    return 0;
//}




int main() {
    char str[1001] = { 0 };
    gets(str);
    int len = strlen(str);
    for (int i = 0; i < len; i++) {
        int count = 0;
        if (str[i] == '6') {
            int j = i;
            int t = i;
            while (j) {
                if (str[j] == '6') {
                    count++;
                    j++;
                    i = j;
                }
                else j = 0;
            }
        }
        if (count > 3 && count <= 9) {
            str[i - count + 1] = '9';
            for (int k = i - count + 2; k <= count; k++) {
                str[k] = ' ';
            }
        }
        if (count > 9) {
            str[i - count + 1] = '27';
            for (int k = i - count + 2; k <= count; k++) {
                str[k] = ' ';

            }
        }


    }

    for (int i = 0; i < len; i++) {
        printf("%c", str[i]);
    }
    return 0;
}